package admin_user_permissions

import (
	"gitee.com/theegg/go-brick/app/service/app"
)

// 获取指定的 管理用户　的权限ID
// @param userId int64
// @return []int64 返回的是id的切片
func GetPermissionsIdsByUserId(userId int64) ([]int64, error) {
	items, err := GetItemsFromCacheByUserId(userId)
	if err != nil {
		return nil, app.NewError(err)
	}

	returnData := make([]int64, 0)
	for _, item := range items {
		returnData = append(returnData, item.PermissionId)
	}

	return returnData, nil
}

// @title 从数据库获取所有的  指定管理用户　分配的权限
// @return map[int64]*AdminUserPermissions
func GetItemById(userId int64) (map[int64]*AdminUserPermissions, error) {
	adminPermissions := make(map[int64]*AdminUserPermissions)
	err := app.Db().Where("user_id = ?", userId).Find(&adminPermissions)
	if err != nil {
		return nil, app.NewError(err)
	}

	return adminPermissions, nil
}
